home *** CD-ROM | disk | FTP | other *** search
/ Aminet 1 (Walnut Creek) / Aminet - June 1993 [Walnut Creek].iso / usenet / sources / volume2 / editors / dme1316.of6 < prev    next >
Internet Message Format  |  1988-10-22  |  4KB

  1. Path: xanth!nic.MR.NET!tank!ncar!gatech!bbn!ulowell!page
  2. From: page@swan.ulowell.edu (Bob Page)
  3. Newsgroups: comp.sources.amiga
  4. Subject: v02i014:  dme - programmer's text editor V1.31, Part06/06
  5. Message-ID: <9777@swan.ulowell.edu>
  6. Date: 22 Oct 88 04:39:11 GMT
  7. Organization: University of Lowell, Computer Science Dept.
  8. Lines: 131
  9. Approved: page@swan.ulowell.edu
  10.  
  11. Submitted-by: dillon@cory.berkeley.edu (Matt Dillon)
  12. Posting-number: Volume 2, Issue 14
  13. Archive-name: editors/dme131.6of6
  14.  
  15. # This is a shell archive.  Remove anything before this line
  16. # then unpack it by saving it in a file and typing "sh file"
  17. # (Files unpacked will be owned by you and have default permissions).
  18. # This archive contains the following files:
  19. #    ./README
  20. #    ./TODO
  21. #
  22. if `test ! -s ./README`
  23. then
  24. echo "writing ./README"
  25. cat > ./README << '\Rogue\Monster\'
  26.  
  27.                   DME
  28.  
  29.               A Programmer's Editor
  30.  
  31.                 Matthew Dillon
  32.  
  33.  
  34. First Time DME users:    READ THE DOCUMENTATION.  There is no online help
  35.             for DME.  The editor is designed for programmers
  36.             like me.
  37.  
  38.  
  39.     Place DME wherever.  place SAMPLE.EDRC as S:.EDRC  .. DME automatically
  40.     sources S:.EDRC, and the .EDRC in the current directory on startup.
  41.  
  42. Seasoned DME users:    The end of the documentation contains changes and
  43.             bug fixes to this version.  Review the command list.
  44.  
  45.                     Matthew Dillon
  46.                     891 Regal Rd.
  47.                     Berkeley, Ca. 94708
  48.                     USA
  49.  
  50.                     ...ihnp4!ucbvax!dillon    USENET
  51.                     dillon@ucbvax.berkeley.edu    ARPANET
  52.  
  53.  
  54.  
  55. \Rogue\Monster\
  56. else
  57.   echo "will not over write ./README"
  58. fi
  59. if [ `wc -c ./README | awk '{printf $1}'` -ne 647 ]
  60. then
  61. echo `wc -c ./README | awk '{print "Got " $1 ", Expected " 647}'`
  62. fi
  63. if `test ! -s ./TODO`
  64. then
  65. echo "writing ./TODO"
  66. cat > ./TODO << '\Rogue\Monster\'
  67.  
  68. Last Revision 4 Sept 1988,  Matthew Dillon
  69.  
  70.     -SAVEMAP, does not output (s- ) properly.
  71.  
  72. BUGS:
  73.     - Word Wrap (actually reformat).  hold 1 down ... can freeze up due
  74.       to word being too long.
  75.     - Can get behind keyboard when key repeating.
  76.     - Fix case-ignore
  77.  
  78. TODO:
  79.     - wordwrap mode reformat should put two spaces after punctuation
  80.       .?!:; instead of 1.
  81.     - ascii numeric variable support and ENV: support
  82.     - exception handling
  83.     - string kill vector
  84.     - character oriented blocks
  85.     - stackable search/replace strings
  86.     - a way to cancel all user keymaps
  87.     - clipboard support
  88.     - anchored search
  89.     - provision to show mapping for a single key.  Allow $map .. $c-a...
  90.     - Allow different current directory for each window
  91.     - Add scroll gadgets
  92.     - Formatted Save
  93.  
  94.  
  95. fsave (formatted save)
  96.  
  97.     When it encounters one linefeed with the next character not whitespace,
  98.     it writes a space.    If the next character is whitespace it leaves it
  99.     alone (write one linefeed).  If the next character is a linefeed, write
  100.     one linefeed then copy linefeeds up to the next non-linefeed.
  101.  
  102.     This will almost allow "word-processor" output... with columns! Very
  103.     simple, very small, and it will save me from the horrors of
  104.     PageSetter's editor.  You may want to do funky things to the name like
  105.     "fsaveas" or "fbsave" or whatever.
  106.  
  107.  
  108. SUGGESTIONS FOR NOT SO IMMEDIATE FUTURE:
  109.  
  110.    Add some user-accessible variables, like for current x/y position,
  111. total text length, insert mode, modification status, window size and
  112. position, current line length, last operation status, etc.
  113.  
  114.    Add an array of user integer variables to go along with the array
  115. of toggles.
  116.  
  117.    Add a command to evaluate simple arithmetic expressions and store
  118. the result in user variables.
  119.  
  120.    Teach the condition evaluator (for "if" and "when") to do comparisons
  121. on integers and maybe also on strings ("if $scanf=`something'" ?).
  122.  
  123.    Have you considered porting the guts of DME into a machine-independent
  124. environment (curses?).  I know, this is pretty far fetched, it's just that
  125. I miss the power of DME at work...
  126.  
  127.  
  128. \Rogue\Monster\
  129. else
  130.   echo "will not over write ./TODO"
  131. fi
  132. if [ `wc -c ./TODO | awk '{printf $1}'` -ne 2072 ]
  133. then
  134. echo `wc -c ./TODO | awk '{print "Got " $1 ", Expected " 2072}'`
  135. fi
  136. echo "Finished archive 6 of 6"
  137. # if you want to concatenate archives, remove anything after this line
  138. exit
  139. -- 
  140. Bob Page, U of Lowell CS Dept.  page@swan.ulowell.edu  ulowell!page
  141. Have five nice days.
  142.